The present invention concerns a distributed application in the form of a first part in a terminal and the second part in a chip card, also referred to as a microcontroller card or integrated-circuit card, connected to the terminal.
According to a preferred example to which reference will be made in the remainder of the description, the terminal is a mobile radial terminal in a digital cellular radio communication network, and the chip card is a removable user identity module of the UICC (Universal Integrated Circuit Card) type.
The invention thus relates to an open terminal in which there is implemented an open operating system that allows dynamic downloading of additional applications on top of the operating system, each distributed partly in the terminal and partly in a chip card.
A chip card of this type makes it possible to store applications and comprises a SIM (Subscriber Identity Module) or USIM main application for communicating with the outside via a communication interface in a terminal and authenticating the user of the card. Only the said main application accesses the communication interface in the terminal in a synchronised manner. Neither of the two parts of the distributed applications can access the communication interface in a synchronised manner.
Thus the first parts of the distributed applications and the communication interface, although independent and able to be executed on the operating system of the terminal, can access the chip card separately. For example, a command established by a first part of a distributed application and transmitted to the chip card can result in an action requiring a response from the chip card including a proactive command having to have recourse to the communication interface in the terminal, such as a call establishment.
However, the first application part, not being capable of interpreting the proactive command, cannot trigger a proactive session. Moreover, the communication interface, not having interrogated the chip card and therefore not originating the proactive command established, can also not interpret it, which results in a blockage.